Digital video capabilities can be incorporated into a wide range of devices, including digital televisions, digital direct broadcast systems, wireless broadcast systems, personal digital assistants (PDAs), laptop or desktop computers, digital cameras, digital recording devices, digital media players, video gaming devices, video game consoles, cellular or satellite radio telephones, video teleconferencing devices, and the like. Digital video devices implement video compression techniques, such as those described in the standards defined by MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, Part 10, Advanced Video Coding (AVC), or the emerging High Efficiency Video Coding (HEVC) standard, and extensions of such standards, to transmit and receive digital video information more efficiently.
Video compression techniques perform spatial prediction and/or temporal prediction to reduce or remove redundancy inherent in video sequences. For block-based video coding, a video frame or slice can be partitioned into video blocks or coding units (CUs). Video blocks in an intra-coded (I) frame or slice are encoded using spatial prediction with respect to neighboring blocks. Video blocks in an inter-coded (P or B) frame or slice can use spatial prediction with respect to neighboring blocks in the same frame or slice or temporal prediction with respect to other reference frames. Video blocks in a bidirectional predicted (B) frame are encoded using bidirectional prediction to calculate two motion vectors from reference frames in two different reference frame lists, typically one past frame and one future frame. Video blocks in a unidirectional predicted (P) frame are encoded using unidirectional prediction to calculate a single motion vector from a single reference frame list, typically a past frame.